﻿using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;

namespace MugenMvvmToolkit.Interfaces
{
    /// <summary>
    ///     Provides a way for an object to be invalidated.
    /// </summary>
    public interface IValidatableObject
    {
        /// <summary>
        ///     Determines whether the specified object is valid.
        /// </summary>
        /// <returns>
        ///     A collection that holds failed-validation information.
        /// </returns>
        /// <param name="validationContext">The validation context.</param>
        IEnumerable<ValidationResult> Validate(ValidationContext validationContext);
    }
}